# 基类 封装显性等待
# 封装
# 对象库层
from selenium.webdriver.support.wait import WebDriverWait

from utils import UtilsDriver3


class Base1:

    def __init__(self):
        # 调用不同方法的驱动 就可以了封装utilsdriver1
        self.driver = UtilsDriver3.Get_driver3()  # 获取驱动对象 记住基类要创建驱动对象

    def wait1(self, location):
        wait = WebDriverWait(self.driver, 10, 1)
        element = wait.until(lambda x: x.find_element(*location))  # 显性等待获取时间
        return element


# 操作层基类封装
class base_handle1:
    # 操作层的目的是找到元素执行显性输入信息操作

    def input_text(self, element, text):  # 输入两个参数 element text 元素和需要输入的信息 记住 element从base1中来 执行页面操作就知道了
        element.clear()  # 清除原有的对话
        element.send_keys(text)